Iterative interference canceller for wireless multiple-access systems with multiple receive antennas

ABSTRACT

This invention teaches to the details of an interference canceling receiver for canceling intra-cell and inter-cell interference in coded, multiple-access, spread spectrum transmissions that propagate through frequency selective communication channels to a multiplicity of receive antennas. The receiver is designed or adapted through the repeated use of symbol-estimate weighting, subtractive cancellation with a stabilizing step-size, and mixed-decision symbol estimates. Receiver embodiments may be designed, adapted, and implemented explicitly in software or programmed hardware, or implicitly in standard RAKE-based hardware either within the RAKE (i.e., at the finger level) or outside the RAKE (i.e., at the user or subchannel symbol level). Embodiments may be employed in user equipment on the forward link or in a base station on the reverse link. It may be adapted to general signal processing applications where a signal is to be extracted from interference.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to Provisional U.S. Pat. Appl. Ser. No.60/736,204, filed Nov. 15, 2005, and entitled “Iterative InterferenceCancellation Using Mixed Feedback Weights and Stabilizing Step Sizes,”and is a Continuation in Part of U.S. patent application Ser. No.11/451,932, filed Jun. 13, 2006, and entitled “Iterative InterferenceCancellation Using Mixed Feedback Weights and Stabilizing Step Sizes,”which are incorporated by reference in their entireties.

BACKGROUND

1. Field of the invention

The present invention relates generally to cancellation of intra-channeland inter-channel interference in coded spread spectrum wirelesscommunication systems with multiple receive antennas. More specifically,the invention takes advantage of the receive diversity afforded bymultiple receive antennas in combination with multiple uses of aninterference-cancellation unit consisting of symbol-estimate weighting,subtractive cancellation with a stabilizing step-size, and amixed-decision symbol estimator.

2. Discussion of the Related Art

In an exemplary wireless multiple-access system, a communicationresource is divided into code-space subchannels allocated to differentusers. A plurality of subchannel signals received by a wireless terminal(e.g., a subscriber unit or a base station) may correspond to differentusers and/or different subchannels allocated to a particular user.

If a single transmitter broadcasts different messages to differentreceivers, such as a base station in a wireless communication systemserving a plurality of mobile terminals, the channel resource issubdivided in order to distinguish between messages intended for eachmobile. Thus, each mobile terminal, by knowing its allocatedsubchannel(s), may decode messages intended for it from thesuperposition of received signals. Similarly, a base station typicallyseparates signals it receives into subchannels in order to differentiatebetween users.

In a multipath environment, received signals are superpositions oftime-delayed and complex-scaled versions of the transmitted signals.Multipath can cause several types of interference. Intra-channelinterference occurs when the multipath time-spreading causes subchannelsto leak into other subchannels. For example, forward-link subchannelsthat are orthogonal at the transmitter may not be orthogonal at thereceiver. When multiple base stations (or sectors or cells) are active,inter-channel interference may result from unwanted signals receivedfrom other base stations. These types of interference can degradecommunications by causing a receiver to incorrectly decode receivedtransmissions, thus increasing a receiver's error floor. Interferencemay degrade communications in other ways. For example, interference maydiminish the capacity of a communication system, decrease the region ofcoverage, and/or decrease maximum data rates. For these reasons, areduction in interference can improve reception of selected signalswhile addressing the aforementioned limitations due to interference.Multiple receive antennas enable the receiver to process moreinformation, allowing greater interference-reduction than can beaccomplished with a single receive antenna.

In code division multiple access (such as used in CDMA 2000, WCDMA,EV-DO (in conjunction with time-division multiple access), and relatedstandards), a set of symbols is sent across a common time-frequency slotof the physical channel and separated by the use of a set of distinctcode waveforms, which are usually chosen to be orthogonal (orpseudo-orthogonal for reverse-link transmissions). The code waveformstypically vary in time, with variations introduced by a pseudo-randomspreading code (PN sequence). The wireless transmission medium ischaracterized by a time-varying multipath profile that causes multipletime-delayed replicas of the transmitted waveform to be received, eachreplica having a distinct amplitude and phase due to path loss,absorption, and other propagation effects. As a result, the receivedcode set is no longer orthogonal. Rather, it suffers from intra-channelinterference within a base station and inter-channel interferencearising from transmissions in adjacent cells.

SUMMARY OF THE INVENTION

In view of the foregoing background, embodiments of the presentinvention may provide a generalized interference-canceling receiver forcanceling intra-channel and inter-channel interference inmultiple-access coded-waveform transmissions that propagate throughfrequency-selective communication channels and are received by aplurality of receive antennas. Receiver embodiments may be designed,adapted, and implemented explicitly in software or programmed hardware,or implicitly in standard RAKE-based hardware. Embodiments may beemployed in user equipment on the downlink or in a base station on theuplink.

An interference-cancellation system configured for canceling at leastone of inter-cell and intra-cell interference in multiple-accesscommunication signals received from a plurality of antennas comprises afront-end processing means coupled to an iterativeinterference-cancellation means.

A front-end processing means is configured for generating initial symbolestimates to be coupled to an iterative interference-cancellation means.The front-end processing means may include, by way of example, butwithout limitation, a combiner configured for combining received signalsfrom each of a plurality of transmission sources across a plurality ofantennas for producing combined signals, a despreader configured forresolving the combined signals onto a signal basis for the plurality oftransmission sources to produce soft symbol estimates from the pluralityof transmission sources, and a symbol estimator configured forperforming a mixed decision on each of the soft symbol estimates togenerate the initial symbol estimates.

In one embodiment, the front-end processing means may further comprise asynthesizer configured for synthesizing estimated Rake finger signalsfor each antenna that would be received if weighted symbol decisionswere employed at the plurality of transmission sources, and asubtraction module configured for performing per-antenna subtraction ofa sum of synthesized Rake finger signals from that antenna's receivedsignal to produce an error signal.

In another embodiment, the front-end processing means may furthercomprise a despreader configured for resolving each of a plurality oferror signals corresponding to each of a plurality of antennas onto asignal basis for the plurality of transmission sources for producing aplurality of resolved error signals, a first combiner configured forcombining the resolved error signals across antennas for producing acombined signal, a stabilizing step-size module configured to scale thecombined signal by a stabilizing step size for producing a scaledsignal, and a second combiner configured for combining the combinedsignal with a weighted input vector.

An iterative interference-cancellation means may include, by way ofexample, but without limitation, a sequence of interference-cancellationunits. In one embodiment, each interference-cancellation unit isconfigured for processing signals received by each of the plurality ofantennas, whereby constituent signals for each of a plurality ofantennas are added back to corresponding scaled error signals to produceerror signals for a plurality of transmission sources, followed byresolving the error signals for the plurality of transmission sourcesacross the plurality of antennas onto a signal basis for the pluralityof transmission sources.

In one embodiment, each interference-cancellation unit may comprise asoft-weighting module configured to apply weights to a plurality ofinput symbol decisions to produce weighted symbol decisions, asynthesizer corresponding to each antenna of the plurality of antennasand configured for synthesizing constituent signals, a subtractivecanceller configured to perform a per-antenna subtraction of thesynthesized signal from the received signal to produce a plurality ofper-antenna error signals, a stabilizing step size module configured forscaling the plurality of antenna error signals by a stabilizing stepsize for producing a plurality of scaled error signals, a combinerconfigured for combining each of the constituent signals with itscorresponding scaled error signal to produce a plurality ofinterference-cancelled constituents, a resolving module configured forresolving each of the interference-cancelled constituent signals onto asignal basis for a plurality of transmit sources to produce theinterference-cancelled input symbol decisions, and a mixed-decisionmodule configured for processing the interference-cancelled symboldecisions to produce the updated symbol decisions.

Embodiments of the invention may be employed in any receiver configuredto support the standard offered by the 3^(rd)-Generation PartnershipProject 2 (3GPP2) consortium and embodied in a set of documents,including “TR-45.5 Physical Layer Standard for cdma2000 Spread SpectrumSystems,” “C.S0005-A Upper Layer (Layer 3) Signaling Standard forcdma2000 Spread Spectrum Systems,” and “C.S0024 CDMA2000 High RatePacket Data Air Interface Specification” (i.e., the CDMA2000 standard).

Receivers and cancellation systems described herein may be employed insubscriber-side devices (e.g., cellular handsets, wireless modems, andconsumer premises equipment) and/or server-side devices (e.g., cellularbase stations, wireless access points, wireless routers, wirelessrelays, and repeaters). Chipsets for subscriber-side and/or server-sidedevices may be configured to perform at least some of the receiverand/or cancellation functionality of the embodiments described herein.

Various functional elements, separately or in combination as depicted inthe figures, may take the form of a microprocessor, digital signalprocessor, application specific integrated circuit, field programmablegate array, or other logic circuitry programmed or otherwise configuredto operate as described herein. Accordingly, embodiments may take theform of programmable features executed by a common processor or adiscrete hardware unit.

These and other embodiments of the invention are described with respectto the figures and the following description of the preferredembodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments according to the present invention are understood withreference to the following figures.

FIG. 1 is a general schematic illustrating an iterative interferencecanceller for multiple receive antennas.

FIG. 2 is a block diagram illustrating a per-antenna front-end RAKE andcombiner.

FIG. 3 is a block diagram illustrating a per base-station front-endcombiner configured for combining like base-station signals acrossantennas, a de-spreading module, and an initial symbol decision module.

FIG. 4 is a general schematic of an ICU configured to process signalsfrom multiple receive antennas.

FIG. 5 a is a per-antenna block diagram illustrating part of aninterference-cancellation unit that synthesizes constituent fingersignals.

FIG. 5 b is a per-antenna block diagram illustrating part of aninterference-cancellation unit that synthesizes constituent subchannelsignals.

FIG. 6 is a block diagram of a subtractive canceller in whichcancellation is performed prior to signal despreading.

FIG. 7 a is a block diagram illustrating per-antenna RAKE processing andcombining on interference-cancelled finger signals.

FIG. 7 b is a block diagram illustrating per-antenna RAKE processing andcombining on interference-cancelled subchannel constituent signals.

FIG. 8 is a block diagram illustrating antenna combining, de-spreading,and symbol estimation in an ICU.

FIG. 9 a is a block diagram illustrating an ICU wherein subtractivecancellation is performed after signal de-spreading.

FIG. 9 b shows an alternative embodiment of an ICU configured forperforming subtractive cancellation after signal de-spreading.

FIG. 9 c shows another embodiment of an ICU.

FIG. 10 is a block diagram of an ICU configured for an explicitimplementation.

FIG. 11 a is a block diagram illustrating a method for evaluating astabilizing step size implicitly in hardware.

Various functional elements or steps, separately or in combination,depicted in the figures may take the form of a microprocessor, digitalsignal processor, application specific integrated circuit, fieldprogrammable gate array, or other logic circuitry programmed orotherwise configured to operate as described herein. Accordingly,embodiments may take the form of programmable features executed by acommon processor or discrete hardware unit.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention will now be described more fully hereinafter withreference to the accompanying drawings, in which preferred embodimentsof the invention are shown. This invention may, however, be embodied inmany different forms and should not be construed as limited to theembodiments set forth herein. Rather, these embodiments are provided sothat this disclosure will be thorough and complete, and will fullyconvey the scope of the invention to those skilled in the art.

The following formula represents an analog baseband signal received frommultiple base stations by antenna a of a receiver,

$\begin{matrix}{{{y_{a}(t)} = {{\sum\limits_{s = 1}^{B}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}{\sum\limits_{k = 1}^{K_{s}}{b_{s,k}{u_{s,k}\left( {t - \tau_{a,s,l}} \right)}}}}}} + {w_{a}(t)}}},{t \in \left( {0,T} \right)},} & {{Equation}\mspace{20mu} 1}\end{matrix}$with the following definitions

-   -   a represents an a^(th) antenna of a mobile and ranges from 1 to        A;    -   (0,T) is a symbol interval;    -   B is a number of modeled base stations, which are indexed by        subscript s, which ranges from 1 to B. The term “base station”        may be used herein to convey cells or sectors;    -   L_(a,s) is the number of resolvable (or modeled) paths from base        station s to antenna a of the mobile, and is indexed from 1 to        L_(a,s);    -   α_(a,s,l) and τ_(a,s,l) are, respectively, the complex gain and        delay associated with an l^(th) path from base station s to        antenna a of the mobile;    -   K_(s) represents a number of active subchannels in base station        s that employ code-division multiplexing to share the channel.        The subchannels are indexed from 1 to K_(s);    -   u_(s,k)(t) is a code waveform (e.g., spreading waveform) used to        carry a k^(th) subchannel's symbol for an s^(th) base station        (e.g., a chip waveform modulated by a subchannel-specific Walsh        code and covered with a base-station specific PN cover);    -   b_(s,k) is a complex symbol being transmitted for the k^(th)        subchannel of base station s; and    -   w_(a) (t) denotes zero-mean complex additive noise on the a^(th)        antenna. The term w_(a) (t) may include thermal noise and any        interference whose structure is not explicitly modeled (e.g.,        inter-channel interference from unmodeled base stations, and/or        intra-channel interference from unmodeled paths).

FIG. 1 illustrates an iterative interference canceller in accordancewith one embodiment of the invention. Received signals from each of aplurality of antennas 100.1-100. A are processed by corresponding RAKEreceivers 101.1-101.A. Each RAKE receiver 101.1-101.A may comprise amaximal ratio combiner (not shown).

Multipath components received by each RAKE receiver 101.1-101.A areseparated with respect to their originating base stations and processedby a plurality B of constituent-signal analyzers 102.1-102.B. Eachconstituent-signal analyzer 102.1-102.B comprises a combiner, adespreader, and a symbol estimator, such as combiner 111.s, despreader112.s, and symbol estimator 113.s in constituent-signal analyzer 102.s.

Signals received from different antennas 100.1-100.A corresponding to ans^(th) originating base station are synchronized, and then combined(e.g., maximal ratio combined) by combiner 111.s to produce an s^(th)diversity-combined signal. The despreader 112.s resolves the s^(th)diversity-combined signal onto subchannel code waveforms, and the symbolestimator 113.s produces initial symbol estimates, which are input to afirst interference cancellation unit (ICU) 104.1 of a sequence of ICUs104.1-104.M.

ICU 104.1 mitigates intra-channel and/or inter-channel interference inthe estimates in order to produce improved symbol estimates. Successiveuse of ICUs 104.2-104.M further improves the symbol estimates. The ICUs104.1-104.M may comprise distinct units, or a single unit configured toperform each iteration.

FIG. 2 is a block diagram of a Rake receiver, such as RAKE receiver101.a. One of a plurality of processors 201.1-201.B is associated witheach base station. For example, processor 201.s associated with ans^(th) base station comprises a plurality L of time-advance modules202.1-202.L configured to advance the received signal in accordance withL multipath time offsets. Weighting modules 203.1-203.L providecorresponding maximal-ratio combining weights α_(a,s,l) to thetime-advanced signals, and a combiner 204 combines the weighted signalsto produce an output for the a^(th) antenna

$\begin{matrix}{{{{y_{a,s}^{mrc}(t)} = {\frac{1}{\sqrt{E_{s}}}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}^{*}{y_{a}\left( {t + \tau_{a,s,l}} \right)}}}}},{where}}{E_{s} = {\sum\limits_{l = 1}^{L_{a,s}}{{\alpha_{a,s,l}}^{2}.}}}} & {{Equation}\mspace{20mu} 2}\end{matrix}$

FIG. 3 is a block diagram of an exemplary constituent-signal analyzer,such as constituent-signal analyzer 102.s shown in FIG. 1. A combiner301 for a given base station sums the signals over the plurality A ofantennas to produce a combined signal for base station s over all pathsand all antennas

$\begin{matrix}{{y_{s}^{mrc}(t)} = {\sum\limits_{a = 1}^{A}{{y_{a,s}^{mrc}(t)}.}}} & {{Equation}\mspace{20mu} 3}\end{matrix}$The combined signal is resolved onto subchannel code waveforms by aplurality K of despreading modules, comprising K code-waveformmultipliers 302.1-302.K and integrators 303.1-303.K, to give

$\begin{matrix}{q_{s,k} \equiv {\frac{1}{E_{s}}{\int_{0}^{T}{{u_{s,k}^{*}(t)}{y_{s}^{mrc}(t)}{\mathbb{d}t}}}}} & {{Equation}\mspace{20mu} 4}\end{matrix}$as a RAKE/Combine/De-Spread output for the k^(th) subchannel of basestation s. A column vector of these outputs is denotedq _(s) =[q _(s,1) q _(s,2) . . . q _(s,K) _(s) ]^(T)  Equation 5for base station s, where the superscript T denotes matrix transpose.Each q_(s,k) is processed by one of a plurality of symbol estimators304.1-304.K to produce{circumflex over (b)}_(s,k) ^([0])=Estimate Symbol{q _(s,k)},  Equation6where the superscript [0] indicates the initial symbol estimate producedby front-end processing. Symbol estimators 304.1-304.K may includemixed-decision symbol estimators described in U.S. Pat. Appl. Ser. No.60/736,204, or other types of symbol estimators. An output vector ofsymbol estimates for base station s may be formed as{circumflex over (b)} _(s) ^([0]) =[{circumflex over (b)} _(s,1) ^([0]){circumflex over (b)} _(s,2) ^([0]) . . . {circumflex over (b)} _(s,K) ₅^([0])]^(T).

It should be appreciated that one or more of the functions describedwith respect to FIG. 3 may be implemented on discrete-time sequencesgenerated by sampling (or filtering and sampling) continuous waveforms.More specifically, time advances (or delays) of waveforms become shiftsby an integer number of samples in discrete-time sequences, andintegration becomes summation.

FIG. 4 is a flow chart illustrating a functional embodiment of an ICU,such as one of the ICUs 104.1-104.M. Similar ICU embodiments aredescribed in U.S. Pat. Appl. Ser. No. 60/736,204 for a system with asingle receive antenna. However, the embodiment shown in FIG. 4conditions a plurality of received antenna signals for a parallel bankof ICUs and conditions ICU outputs prior to making symbol estimates.Symbol estimates for a plurality of sources are input to the ICU andweighted 401.1-401.B according to perceived merits of the symbolestimates. Any of the soft-weighting methods described in U.S. Pat.Appl. Ser. No. 60/736,204 may be employed. The weighting of a k^(th)subchannel of base station s is expressed byγ_(s,k) ^([i]){circumflex over (b)}_(s,k) ^([i])  Equation 7where {circumflex over (b)}_(s,k) ^([i]) is the input symbol estimate,γ_(s,k) ^([i]) is its weighting factor, and superscript [i] representsthe output of the i^(th) ICU. The superscript [0] represents the outputof front-end processing prior to the first ICU. The symbol estimates maybe multiplexed (e.g., concatenated) 402 into a single column vector

${\underset{\_}{\hat{b}}}^{\lbrack i\rbrack} = \begin{bmatrix}\left( {\underset{\_}{\hat{b}}}_{1}^{\lbrack i\rbrack} \right)^{T} & \left( {\underset{\_}{\hat{b}}}_{2}^{\lbrack i\rbrack} \right)^{T} & \cdots & \left( {\underset{\_}{\hat{b}}}_{B}^{\lbrack i\rbrack} \right)^{T}\end{bmatrix}^{T}$such that the weighted symbol estimates are given by Γ^([i]) {circumflexover (b)} ^([i]), where Γ^([i]) is a diagonal matrix containing theweighting factors along its main diagonal. The weighted symbol estimatesare processed by a synthesizer used to synthesize 403.1-403.Aconstituent signals for each antenna. For each antenna, a synthesizedsignal represents a noise-free signal that would have been observed atantennas a with the base stations transmitting the weighted symbolestimates Γ^([i]) {circumflex over (b)} ^([i]) over the multipathchannels between base stations 1 through B and the mobile receiver

For each antenna, a subtraction module performs interferencecancellation 404.1-404.A on the constituent signals to reduce the amountof intra-channel and inter-channel interference. Theinterference-cancelled constituents are processed via per-antenna RAKEprocessing and combining 405.1-405.A to produce combined signals. Thecombined signals are organized by base station, combined acrossantennas, resolved onto the subchannel code waveforms, and processed bysymbol estimators 406.1-406.B. The terms {circumflex over (b)}_(s,k)^([i+1]) denote the estimated symbol for the k^(th) subchannel of basestation s after processing by the (i+1)^(th) ICU.

FIG. 5 a illustrates an apparatus configured for generating multipathfinger constituent signals and FIG. 5 b shows an apparatus configuredfor generating subchannel constituents. A plurality of processors501.1-501.B is configured for processing signals received from each basestation. For an s^(th) base station, a plurality K_(s) of multipliers502.1-502.K scales each code waveform with a corresponding weightedsymbol estimate to produce a plurality of estimated transmit signals,which are combined by combiner 503 to produce a superposition signal

$\begin{matrix}{\sum\limits_{k = 0}^{K_{s} - 1}{\gamma_{s,k}^{\lbrack i\rbrack}{\hat{b}}_{s,k}^{\lbrack i\rbrack}{{u_{s,k}(t)}.}}} & {{Equation}\mspace{20mu} 8}\end{matrix}$

A multipath channel emulator comprising path-delay modules 504.1-504.Land path-gain modules 505.1-505.L produces multipath finger constituentsignals expressed by

$\begin{matrix}{{{{\overset{\sim}{y}}_{a,s,l}^{\lbrack i\rbrack}(t)} \equiv {\alpha_{a,s,l}{\sum\limits_{k = 0}^{K_{s} - 1}{\gamma_{s,k}^{\lbrack i\rbrack}{\hat{b}}_{s,k}^{\lbrack i\rbrack}{u_{s,k}\left( {t - \tau_{a,s,l}} \right)}}}}},} & {{Equation}\mspace{20mu} 9}\end{matrix}$where {tilde over (y)}_(a,s,l) ^([i])(t) is the l^(th) fingerconstituent for the channel between base station s and antenna a.

FIG. 5 b shows an apparatus configured for generating subchannelconstituents. For a particular antenna a, a processor 510.1-510.B isconfigured for processing signals received from each base station.Within each base station processor 510.1-510.B, a plurality ofprocessors 511.1-511.K are configured for processing each subchannel.Each subchannel processor 511.1-511.K comprises a multiplier 512 thatscales a k^(th) code waveform with a corresponding weighted symbolestimate to produce an estimated transmit signal, which is processed bya multipath channel emulator comprising path-delay modules 513.1-513.Lpath-gain modules 514.1-514.L, and a combiner of the multiple paths 515.to produce

$\begin{matrix}{{{{\overset{\sim}{y}}_{a,s,k}^{\lbrack i\rbrack}(t)} \equiv {\gamma_{s,k}^{\lbrack i\rbrack}{\hat{b}}_{s,k}^{\lbrack i\rbrack}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}{u_{s,k}\left( {t - \tau_{a,s,l}} \right)}}}}},} & {{Equation}\mspace{20mu} 10}\end{matrix}$which is the synthesized constituent signal for the k^(th) subchannel ofbase station s at the a^(th) antenna of the mobile. Note that whileEquation 9 and Equation 10 both show a signal with a three-parametersubscript for their left-hand sides, they are different signals; thesubscript l (as in Equation 9) will be reserved for a finger constituentand the subscript k (as in Equation 10) will be reserved for asubchannel constituent.

FIG. 6 is a block diagram showing an apparatus configured for performinginterference cancellation on synthesized constituent signals for eachantenna . Since, the constituent signals for each antenna a may comprisemultipath finger constituents or subchannel constituents. The indexjε{1, . . . ,J_(a,s)} is introduced, where

$J_{a,s} = \left\{ {\begin{matrix}L_{a,s} & {{for}\mspace{14mu}{finger}\mspace{14mu}{constituets}} \\K_{s} & {{for}\mspace{14mu}{subchannel}\mspace{14mu}{consituets}}\end{matrix}.} \right.$A first processor 600 comprises a plurality B of subtractive cancellers601.1-601.B configured for processing constituent signals relative toeach of a plurality B of base stations.

Canceller 601.s is illustrated with details that may be common to theother cancellers 601.1-601.B. A combiner 602 sums the constituentsignals to produce a synthesized received signal associated with basestation s,

${{\overset{\sim}{y}}_{a,s}^{\lbrack i\rbrack} \equiv {\sum\limits_{j = 1}^{J_{a,s}}{\overset{\sim}{y}}_{a,s,j}^{\lbrack i\rbrack}}},$where {tilde over (y)}_(a,s,j) ^([i]) is the j^(th) constituent fingeror subchannel signal on the a^(th) antenna for base station s.

A second processor 610 comprises a combiner 611 configured for combiningthe synthesized received signals across base stations to produce acombined synthesized receive signal

${{\overset{\sim}{y}}_{a}^{\lbrack i\rbrack}(t)} = {\sum\limits_{s = 1}^{B}{{\overset{\sim}{y}}_{a,t}^{\lbrack i\rbrack}(t)}}$corresponding to the a^(th) antenna. A subtraction module 612 produces asignal from the difference between the combined synthesized receivesignal and the actual received signal to create a residual signaly_(a)(t)−{tilde over (y)}_(a) ^([i])(t). A step size scaling module 613scales the residual signal with a complex stabilizing step size μ_(a)^([i]) 613 to give a scaled residual signal μ_(a) ^([i])(y_(a)(t)−{tildeover (y)}_(a) ^([i])(t)). The scaled residual signal is returned to thecancellers 601.1-601.B in the first processor 601 where combiners, suchas combiners 603.1-603.J in the canceller 601.s add the scaled residualsignal to the constituent signals to produce a set ofinterference-cancelled constituents expressed byz _(a,s,j) ^([i])(t)≡{tilde over (y)} _(a,s,j) ^([i])(t)+μ_(a) ^([i])(y_(a)(t)−{tilde over (y)} _(a) ^([i])(t)),   Equation 11for an interference-cancelled j^(th) constituent finger or subchannelsignal on the a^(th) antenna for base station s. The termμ_({dot over (a)}) ^([i]) may be evaluated as shown in U.S. patentapplication Ser. No. 11/451,932, which describes calculating a step sizefor a single receive antenna.In one embodiment the same step size may be employed for all antennas,meaning μ_(a) ^([i])=μ^([i]) for all a.

FIG. 7 a is a block diagram of an apparatus configured for performingRAKE processing and combining 405.1-405.A on the interference-cancelledconstituent signals for each antenna. Each of a plurality B of Rakeprocessors 701.1-701.B is configured for processing finger constituentsfor each base station. Processor 701.s shows components that are commonto all of the processors 701.1-701.B. A plurality L of time-advancemodules 702.1-702.L advance finger signal inputs by multipath timeshifts. Scaling modules 703.1-703.L scale the time-shifted inputs bycomplex channel gains, and the resulting scaled signals are summed 704to yield the maximal ratio combined (MRC) output

$\begin{matrix}{{z_{a,s}^{{mrc},{\lbrack i\rbrack}}(t)} \equiv {\frac{1}{\sqrt{E_{s}}}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}^{*}{z_{a,s,l}\left( {t + \tau_{a,s,l}} \right)}}}}} & {{Equation}\mspace{20mu} 12}\end{matrix}$associated with antenna a and base station s.

In FIG. 7 b, Rake processors 710.1-710.B may each comprise a combiner711 configured for summing the subchannel constituent signals, aplurality L of time-advance modules 712.1-712.L configured for advancingthe sum by multipath time offsets, scaling modules 713.1-713.Lconfigured for scaling the sum by corresponding multipath channel gains,and a combiner 714 configured for summing the scaled signals to producethe MRC output

$\begin{matrix}{{a_{a,s}^{{mrc},{\lbrack i\rbrack}}(t)} \equiv {\frac{1}{\sqrt{E_{s}}}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}^{*}{\sum\limits_{k = 1}^{K_{s}}{z_{a,s,k}\left( {t + \tau_{a,s,l}} \right)}}}}}} & {{Equation}\mspace{20mu} 13}\end{matrix}$associated with antenna a and base station s.

FIG. 8 shows an apparatus configured for performing the steps406.1-406.B shown in FIG. 4 to produce the updated symbol estimates Eachof a plurality B of processors 801.1-801.B is configured for processingthe MRC outputs. Processor 801.s shows details that are common to all ofthe processors 801.1-801.B.

For each base station, the MRC signals for all antennas are summed 802to form the overall MRC signal

$\begin{matrix}{{{z_{s}^{{mrc},{\lbrack i\rbrack}}(t)} \equiv {\sum\limits_{a = 1}^{A}{z_{a,s}^{{mrc},{\lbrack i\rbrack}}(t)}}},} & {{Equation}\mspace{20mu} 14}\end{matrix}$which is resolved by code multipliers 803.1-803.K and integrators804.1-804.K onto the subchannel code waveforms. Symbol estimators805.1-805.K are employed for producing symbol estimates, such asmixed-decision symbol estimates as described in U.S. patent applicationSer. No. 11/451,932.

Because of the linear nature of many of the ICU components, alternativeembodiments of the invention may comprise similar components employed ina different order of operation without affecting the overallfunctionality. In one embodiment, antenna combining and de-spreading maybe performed prior to interference cancellation, such as illustrated inFIG. 9.

FIG. 9 a illustrates a plurality of processing blocks 901.1-901.Bconfigured for processing constituent finger or sub-channel signalsreceived from each of a plurality of base stations. The constituentsignals are subtracted from the received signal on antenna a by asubtraction module 902 to produce a residual signal. The residual signalis processed by a RAKE 903.1-903.L and maximal ratio combiner(comprising weighting modules 904.1-904.L and an adder 905) to producean error signal e_(a,s) ^([i])(t) for antenna a and base station s.

In FIG. 9 b, each of a plurality of processing blocks 911.1-911.B isconfigured to combine the error signals produced by the apparatus shownin FIG. 9 a. In processing block 911.s, a combiner 912 combines theerror signals corresponding to the s^(th) base station across theantennas to produce e_(s) ^([i])(t), the error signal for base stations. Despreaders comprising code multipliers 913.1-913.K and integrators914.1-914.K resolve the error signal e_(s) ^([i])(t) onto code waveformsof subchannels associated with the s^(th) base station.

The output for the k^(th) subchannel of base station s is

∫₀^(τ)u_(k)^(*)(t)𝕖_(s)^([i])(t)𝕕t,which is equal to q_(s,k)−{tilde over (q)}_(s,k) ^([i]), where q_(s,k)is defined in Equation 4, and

${\overset{\sim}{q}}_{s,k}^{\lbrack i\rbrack} = {\frac{1}{E_{s}}{\sum\limits_{a = 1}^{A}{\int_{0}^{T}{{u_{k}^{*}(t)}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}^{*}{\sum\limits_{j = 1}^{J_{a,s}}{{{\overset{\sim}{y}}_{a,s,j}^{\lbrack i\rbrack}\left( {t + \tau_{a,s,l}} \right)}{{\mathbb{d}t}.}}}}}}}}}$For each base station, the values q_(s,k) and {tilde over (q)}_(s,k)^([i]) may be stacked into a vector over the subchannel index k to formq _(s)−{tilde over (q)} _(s) ^([i]). These likewise may be stacked intoa single vector over the base station index s to give q−{tilde over (q)}^([i]). This quantity may also be determined explicitly using a matrixmultiplication.

FIG. 9 c illustrates a final step of an interference-cancellationprocess. A stabilizing step size module 921 scales the differenceq−{tilde over (q)} ^([i]) by a stabilizing step size μ^([i]), and theresult is added 923 to the weighted input vector Γ^([i]) {circumflexover (b)} ^([i]) after being multiplied 922 by implementation matrix Fto produce a vector sum. The value of the implementation matrix Fdepends on whether finger or subchannel constituents are used. A symbolestimator 924 produces symbol estimates for each element of the vectorsum.

An explicit implementation of an ICU is illustrated in FIG. 10. Theinput symbol estimates are weighted 1000 and multiplied by a matrix R1001. The resulting product is subtracted 1002 from front-end vector qand scaled with the stabilizing step size μ^([i]) by a stabilizing stepsize module 1003. The resulting scaled signal is summed 1004 withweighted symbol estimates multiplied 1005 by the implementation matrix Fto produce a vector sum. A symbol estimator 1006 makes decisions on thevector sum.

Matrix R is the correlation matrix for all subchannels at the receiverafter combining across antennas. It may be evaluated by

$\begin{matrix}{R = {\sum\limits_{a = 1}^{A}R_{a}}} & {{Equation}\mspace{20mu} 15}\end{matrix}$where R_(a) is the correlation matrix for all subchannels at the a^(th)antenna, and it may be determined as described in U.S. patentapplication Ser. No. 11/451,932 for a single antenna receiver. Thematrix F is either the identity matrix when subchannel constituentsignals are employed or the correlation matrix for all subchannels atthe transmitter(s) when finger constituent signals are used, such asdescribed in U.S. patent application Ser. No. 11/451,932. Thisfunctionality may be represented by the one-step matrix-update equation{circumflex over (b)} ^([i+1])=Ψ(μ^([i])( q−RΓ ^([i]) {circumflex over(b)} ^([i]))+FΓ ^([i]) {circumflex over (b)} ^([i])),  Equation 16where Ψ(•) represents any function that returns a symbol estimate foreach element of its argument (including, for example, any of themixed-decision symbol estimation functions described in U.S. patentapplication Ser. No. 11/451,932) and all other quantities as previouslydescribed.

The stabilizing step size μ^([i]) may take any of the forms described inU.S. patent application Ser. No. 11/451,932 that depend on thecorrelation matrix R, the implementation matrix F, and the weightingmatrix Γ^([i]). Two of these forms of μ^([i]) are implicitly calculable,such as described in U.S. patent application Ser. No. 11/451,932 for asingle receive antenna.

FIG. 11 a illustrates a method for calculating a stabilizing step sizewhen multiple receive antennas are employed. Preliminary processing1101.1-1101.A for each antenna provides for RAKE processing, combining,and de-spreading 1102 on the received signal, and RAKE processing,combining, and de-spreading 1103 on the synthesized received signal andproduces 1113 a difference signal. In an alternative embodiment for thepreliminary processing 1101.1-1101.A shown in FIG. 11 b, a differencesignal calculated from the received signal and the synthesized receivedsignal undergoes RAKE processing, combining, and de-spreading 1110.a

The difference-signal vector corresponding to the a^(th) antenna isdenoted by β _(a) ^([i]). The difference-signal vectors for all of theantennas are summed to produce a sum vector β ^([i]). A sum of thesquare magnitudes 1105 of the elements of the sum vector (i.e., ∥β^([i])∥²) provides a numerator of a ratio from which the stabilizingstep size is evaluated. The elements of β ^([i]) are used as transmitsymbols in order to synthesize 1106 received signals for each antenna.Synthesized received signals are expressed as

$\sum\limits_{s = 1}^{B}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}{\sum\limits_{k = 1}^{K_{s}}{\beta_{s,k}^{\lbrack i\rbrack}{u_{s,k}\left( {t - \tau_{a,s,l}} \right)}}}}}$for antenna a, where β_(s,k) ^([i]) is the k^(th) element of β ^([i]).An integral of the square magnitude of each synthesized signal iscalculated 1108.1-1108.A and summed 1109 to produce the denominator ofthe ratio. The ratio of the numerator and the denominator gives thefirst version of the step size μ^([i]).

FIG. 11 c shows an implicit evaluation of the step size in accordancewith another embodiment of the invention. The denominator of the ratioused to calculate the stabilizing step size is determined by weighting1150 the vector β ^([i]) by soft weights (such as contained in thediagonal matrix Γ^([i])). The elements of the resulting weighted vectorare used to produce 1151 synthesized received signals for all of theantennas. Integrals of the square magnitudes of the synthesized receivedsignals are calculated 1152.1-1152.A and summed 1153 to provide thedenominator.

The corresponding numerator is calculated by scaling 1154 symbolestimates produced at the i^(th) iteration by the square of the softweights (as contained in the diagonal matrix (Γ^([i]))²). The resultingscaled vector is used to synthesize 1155 received signals for all of theantennas. The synthesized signals and the received signals are processedby a parallel bank of processors 1156.1-1156.A, each corresponding to aparticular antenna. The functionality of each processor 1156.1-1156.Amay be equivalent to the processor 1101.a shown in FIG. 11 a. The vectoroutputs of the processors 1156.1-1156.A are summed 1157, and thenumerator is produced from the inner product 1158 of the sum vector withthe weighted vector.

Explicit versions of both versions of the step size are given,respectively, by

$\begin{matrix}{\mu^{\lbrack i\rbrack} = \frac{\left( {\underset{\_}{q} - {{RF}\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}}} \right)^{H}\left( {\underset{\_}{q} - {{RF}\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}}} \right)}{\left( {\underset{\_}{q} - {R\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}}} \right)^{H}{R\left( {\underset{\_}{q} - {R\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}}} \right)}}} & {{Equation}\mspace{20mu} 17} \\{and} & \; \\{{\mu^{\lbrack i\rbrack} = \frac{\left( {\underset{\_}{q} - {R\;\Gamma^{\lbrack i\rbrack}F\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}{\Gamma^{\lbrack i\rbrack}\left( {\underset{\_}{q} - {R\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}}} \right)}}} \right.}{\left( {\underset{\_}{q} - {R\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}}} \right)^{H}\left( \Gamma^{\lbrack i\rbrack} \right)^{H}R\;{\Gamma^{\lbrack i\rbrack}\left( {\underset{\_}{q} - {R\;\Gamma^{\lbrack i\rbrack}{\underset{\_}{\hat{b}}}^{\lbrack i\rbrack}}} \right)}}},} & {{Equation}\mspace{20mu} 18}\end{matrix}$wherein all quantities shown are as previously defined.

Another form of the step size in U.S. patent application Ser. No.11/451,932 depends only on the path gains, and may be generalized tomultiple receive antennas according to

$\begin{matrix}{{\mu^{\lbrack i\rbrack} = {\mu = {\max\left\{ {C,\frac{\max\limits_{s,l}{\sum\limits_{a = 1}^{A}{\alpha_{a,s,l}}^{p}}}{\sum\limits_{a = 1}^{A}{\sum\limits_{s = 1}^{B}{\sum\limits_{l = 1}^{L_{a,s}}{\alpha_{a,s,l}}^{p}}}}} \right\}}}},} & {{Equation}\mspace{20mu} 19}\end{matrix}$where μ^([i]) is fixed for every ICU and C and p are non-negativeconstants.

Embodiments of the invention are also applicable to the reverse-link,such as described for the single receive antenna in U.S. patentapplication Ser. No. 11/451,932. The primary difference (when comparedto the forward-link) is that subchannels from distinct transmittersexperience different multipath channels and, thus, the receiver mustaccommodate each subchannel with its own RAKE/Combiner/De-Spreader, andchannel emulation must take into account that, in general, everysubchannel sees its own channel. Such modifications are apparent tothose knowledgeable in the art.

Embodiments of the invention may be realized in hardware or software andthere are several modifications that can be made to the order ofoperations and structural flow of the processing. Those skilled in theart should recognize that method and apparatus embodiments describedherein may be implemented in a variety of ways, includingimplementations in hardware, software, firmware, or various combinationsthereof. Examples of such hardware may include Application SpecificIntegrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs),general-purpose processors, Digital Signal Processors (DSPs), and/orother circuitry. Software and/or firmware implementations of theinvention may be implemented via any combination of programminglanguages, including Java, C, C++, Matlab™, Verilog, VHDL, and/orprocessor specific machine and assembly languages.

Computer programs (i.e., software and/or firmware) implementing themethod of this invention may be distributed to users on a distributionmedium such as a SIM card, a USB memory interface, or othercomputer-readable memory adapted for interfacing with a consumerwireless terminal. Similarly, computer programs may be distributed tousers via wired or wireless network interfaces. From there, they willoften be copied to a hard disk or a similar intermediate storage medium.When the programs are to be run, they may be loaded either from theirdistribution medium or their intermediate storage medium into theexecution memory of a wireless terminal, configuring an onboard digitalcomputer system (e.g. a microprocessor) to act in accordance with themethod of this invention. All these operations are well known to thoseskilled in the art of computer systems.

The functions of the various elements shown in the drawings, includingfunctional blocks labeled as “modules” may be provided through the useof dedicated hardware, as well as hardware capable of executing softwarein association with appropriate software. When provided by a processor,the functions may be performed by a single dedicated processor, by ashared processor, or by a plurality of individual processors, some ofwhich may be shared. Moreover, explicit use of the term “processor” or“module” should not be construed to refer exclusively to hardwarecapable of executing software, and may implicitly include, withoutlimitation, digital signal processor DSP hardware, read-only memory(ROM) for storing software, random access memory (RAM), and non-volatilestorage. Other hardware, conventional and/or custom, may also beincluded. Similarly, the function of any component or device describedherein may be carried out through the operation of program logic,through dedicated logic, through the interaction of program control anddedicated logic, or even manually, the particular technique beingselectable by the implementer as more specifically understood from thecontext.

The method and system embodiments described herein merely illustrateparticular embodiments of the invention. It should be appreciated thatthose skilled in the art will be able to devise various arrangements,which, although not explicitly described or shown herein, embody theprinciples of the invention and are included within its spirit andscope. Furthermore, all examples and conditional language recited hereinare intended to be only for pedagogical purposes to aid the reader inunderstanding the principles of the invention. This disclosure and itsassociated references are to be construed as applying without limitationto such specifically recited examples and conditions. Moreover, allstatements herein reciting principles, aspects, and embodiments of theinvention, as well as specific examples thereof, are intended toencompass both structural and functional equivalents thereof.Additionally, it is intended that such equivalents include bothcurrently known equivalents as well as equivalents developed in thefuture, i.e., any elements developed that perform the same function,regardless of structure.

1. In an interference canceller configured for canceling at least one ofinter-cell and intra-cell interference in a received signal from aplurality of antennas, a front-end module configured for generatinginitial symbol decisions, and a sequence of interference cancellationunits for producing updated symbol decisions; each of the sequence ofinterference cancellation units comprising: a soft-weighting moduleconfigured to apply weights to a plurality of input symbol decisions toproduce weighted symbol decisions, a synthesizer for processing saidweighted symbol decisions, corresponding to each antenna of theplurality of antennas and configured for synthesizing constituentsignals, a subtractive canceller configured to perform a per-antennasubtraction of the synthesized signal from the received signal toproduce a plurality of per-antenna error signals, a stabilizing stepsize module configured for scaling the plurality of antenna errorsignals by a stabilizing step size for producing a plurality of scalederror signals, a combiner configured for combining each of theconstituent signals with its corresponding scaled error signal toproduce a plurality of interference-cancelled constituents, a resolvingmodule configured for resolving each of the interference cancelledconstituent signals onto a signal basis for a plurality of transmitsources to produce the interference-cancelled input symbol decisions,and a mixed-decision module configured for processing theinterference-cancelled symbol decisions to produce the updated symboldecisions.
 2. The interference canceller recited in claim 1, furtherconfigured for canceling interference from each of a plurality of basestations.
 3. The interference canceller recited in claim 1, wherein thesoft-weighting module is further configured to employ constants whosemagnitudes depend on merits of the interference-cancelled symboldecisions.
 4. The canceller recited in claim 1, whereby the stabilizingstep size module is configured to produce a scalar step size thatimproves convergence rate for multiple iterations.
 5. The cancellerrecited in claim 1, wherein the stabilizing step size module isconfigured to produce a stabilizing step size for each antenna that isconfigured to improve convergence rate for multiple iterations.
 6. Thecanceller recited in claim 1 whereby the mixed-decision module isfurther configured to produce each of the updated symbol decisions,irrespective of other symbol decisions, as a hard decision thatquantizes one of the interference-cancelled symbol decisions onto anearby constellation point, or a soft decision that scales one of theinterference-cancelled symbol decisions without quantizing to aconstellation point.
 7. The canceller recited in claim 1, furthercomprising a de-bias module configured to remove bias, as computed onthe interference-cancelled symbol decisions prior to producing theupdated symbol decisions.
 8. The canceller recited in claim 1,configured for performing symbol-level interference cancellation using adirect implementation of a one-step matrix update equation, comprisingan explicit matrix representation of a users' received correlationmatrix for received signals combined across antennas, an implementationmatrix, a soft-weighting matrix, a de-biasing matrix, and a scalarstabilizing step size.
 9. The canceller recited in claim 8 comprising aone-step matrix update equation given by{circumflex over (b)} ^([i+1])=Ψ{D ^([i])(μ^([i])( q−RΓ ^([i]){circumflex over (b)} ^([i]))+FΓ ^([i]) {circumflex over (b)} ^([i]))},wherein {circumflex over (b)} ^([i]) is a column vector of input symboldecisions of all sources after an i^(th) iteration of interferencecancellation, q is a vector of the despread received signals that havebeen combined across antennas, μ^([i]) is a scalar stabilizing step,Γ^([i]) is a weighting matrix used for scaling the input symboldecisions, R is a correlation matrix for received signals combinedacross antennas that is a sum of per-antenna received-signal correlationmatrices, F is an implementation matrix, D^([i]) is a de-biasing matrix,and Ψ is a mixed-decision operator that produces updated symboldecisions {circumflex over (b)} ^([i+1]).
 10. The interference cancellerrecited in claim 8, wherein the implementation matrix is an identitymatrix or a correlation matrix for transmitted signals.
 11. Thecanceller recited in claim 1, configured to reside in at least one of aset of devices, the set comprising a subscriber-side device configuredfor processing forward-link signals and a server-side device forprocessing reverse-link signals.
 12. In a method for canceling at leastone of inter-cell and intra-cell interference in a received signal froma plurality of antennas, the method comprising front-end processingconfigured for generating initial symbol decisions, and iterativeinterference cancellation for producing updated symbol decisions; theiterative interference cancellation comprising: providing for applyingweights to a plurality of input symbol decisions to produce weightedsymbol decisions, providing for processing said weighted symboldecisions and synthesizing constituent signals for each of a pluralityof antennas, providing for performing a per-antenna subtraction of thesynthesized signal from the received signal to produce a plurality ofper-antenna error signals, providing for scaling the plurality ofantenna error signals by a stabilizing step size for producing aplurality of scaled error signals, providing for combining each of theconstituent signals with its corresponding scaled error signal toproduce a plurality of interference-cancelled constituents, providingfor resolving each of the interference-cancelled constituent signalsonto a signal basis for a plurality of transmit sources to produce theinterference-cancelled input symbol decisions, and providing forperforming mixed-decision processing of the interference-cancelledsymbol decisions to produce the updated symbol decisions.
 13. The methodrecited in claim 12, further configured for canceling interference fromeach of a plurality of base stations.
 14. The method recited in claim12, providing for applying weights is further configured to employconstants whose magnitudes depend on merits of theinterference-cancelled symbol decisions.
 15. The method recited in claim12, whereby providing for scaling is configured to produce a scalar stepsize that improves convergence rate for multiple iterations.
 16. Themethod recited in claim 12, wherein providing for scaling is configuredto produce a stabilizing step size for each antenna that is configuredto improve convergence rate for multiple iterations.
 17. The methodrecited in claim 12 whereby providing for mixed-decision processing isfurther configured to produce each of the updated symbol decisions,irrespective of other symbol decisions, as a hard decision thatquantizes one of the interference-cancelled symbol decisions onto anearby constellation point, or a soft decision that scales one of theinterference-cancelled symbol decisions without quantizing to aconstellation point.
 18. The method recited in claim 12, furthercomprising providing for removing bias, as computed on theinterference-cancelled symbol decisions prior to producing the updatedsymbol decisions.
 19. The method recited in claim 12, further configuredfor performing symbol-level interference cancellation using a directimplementation of a one-step matrix update equation, comprising anexplicit matrix representation of a users' received correlation matrixfor received signals combined across antennas, an implementation matrix,a soft-weighting matrix, a de-biasing matrix, and a scalar stabilizingstep size.
 20. The method recited in claim 19 comprising a one-stepmatrix update equation given by{circumflex over (b)} ^([i+1]) =Ψ{D ^([i])(μ^([i])( q−RΓ ^([i]){circumflex over (b)} ^([i]))+FΓ ^([i]) {circumflex over (b)} ^([i]))}wherein {circumflex over (b)} ^([i]) is a column vector of input symboldecisions of all sources after an i^(th) iteration of interferencecancellation, q is a vector of the despread received signals that havebeen combined across antennas, μ^([i]) is a scalar stabilizing step,Γ^([i]) is a weighting matrix used for scaling the input symboldecisions, R is a correlation matrix for received signals combinedacross antennas that is a sum of per-antenna received-signal correlationmatrices, F is an implementation matrix, D^([i]) is a de-biasing matrix,and Ψ is a mixed-decision operator that produces updated symboldecisions {circumflex over (b)} ^([i+1]).
 21. The method recited inclaim 19, wherein the implementation matrix is an identity matrix or acorrelation matrix for transmitted signals.
 22. A subscriber-side deviceconfigured to perform the method recited in claim
 12. 23. A server-sidedevice configured to perform the method recited in claim
 12. 24. Aninterference-cancellation system configured for canceling at least oneof inter-cell and intra-cell interference in a received signal from aplurality of antennas, the system comprising a front-end processingmeans configured for generating initial symbol decisions, and aniterative interference-cancellation means for producing updated symboldecisions; the iterative interference-cancellation means comprising: asoft-weighting means configured to apply weights to a plurality of inputsymbol decisions to produce weighted symbol decisions, a synthesizingmeans configured for processing said weighted symbol decisions and forsynthesizing constituent signals corresponding to each antenna of theplurality of antennas, a subtractive cancellation means configured toperform a per-antenna subtraction of the synthesized signal from thereceived signal to produce a plurality of per-antenna error signals, astabilizing step size means configured for scaling the plurality ofantenna error signals by a stabilizing step size for producing aplurality of scaled error signals, a combining means configured forcombining each of the constituent signals with its corresponding scalederror signal to produce a plurality of interference-cancelledconstituents, a resolving means configured for resolving each of theinterference-cancelled constituent signals onto a signal basis for aplurality of transmit sources to produce the interference-cancelledinput symbol decisions, and a mixed-decision means configured forprocessing the interference-cancelled symbol decisions to produce theupdated symbol decisions.
 25. The system recited in claim 24, furtherconfigured for canceling interference from each of a plurality of basestations.
 26. The system recited in claim 24, wherein the soft-weightingmeans is further configured to employ constants whose magnitudes dependon merits of the interference-cancelled symbol decisions.
 27. The systemrecited in claim 24, whereby the stabilizing step size means isconfigured to produce a scalar step size that improves convergence ratefor multiple iterations.
 28. The system recited in claim 24, wherein thestabilizing step size means is configured to produce a stabilizing stepsize for each antenna that is configured to improve convergence rate formultiple iterations.
 29. The system recited in claim 24 whereby themixed-decision means is further configured to produce each of theupdated symbol decisions, irrespective of other symbol decisions, as ahard decision that quantizes one of the interference-cancelled symboldecisions onto a nearby constellation point, or a soft decision thatscales one of the interference-cancelled symbol decisions withoutquantizing to a constellation point.
 30. The system recited in claim 24,further comprising a de-bias means configured to remove bias, ascomputed on the interference-cancelled symbol decisions prior toproducing the updated symbol decisions.
 31. The system recited in claim24, configured for performing symbol-level interference cancellationusing a direct implementation of a one-step matrix update equation,comprising an explicit matrix representation of a users' receivedcorrelation matrix for received signals combined across antennas, animplementation matrix, a soft-weighting matrix, a de-biasing matrix, anda scalar stabilizing step size.
 32. The system recited in claim 31comprising a one-step matrix update equation given by{circumflex over (b)} ^([i+1]) =Ψ{D ^([i])(μ^([i])( q−RΓ ^([i]){circumflex over (b)} ^([i]))+FΓ ^([i]) {circumflex over (b)} ^([i]))}wherein {circumflex over (b)} ^([i]) is a column vector of input symboldecisions of all sources after an i^(th) iteration of interferencecancellation, q is a vector of the despread received signals that havebeen combined across antennas, μ^([i]) is a scalar stabilizing step,Γ^([i]) is a weighting matrix used for scaling the input symboldecisions, R is a correlation matrix for received signals combinedacross antennas that is a sum of per-antenna received-signal correlationmatrices, F is an implementation matrix, D^([i]) is a de- biasingmatrix, and Ψ is a mixed-decision operator that produces updated symboldecisions {circumflex over (b)} ^([i+1]).
 33. The system recited inclaim 32, wherein the implementation matrix is an identity matrix or acorrelation matrix for transmitted signals.
 34. The system recited inclaim 24, configured to reside in at least one of a set of devices, theset comprising a subscriber-side device configured for processingforward-link signals and a server-side device for processingreverse-link signals.